Continuous If-Then Statements Are Computable

نویسندگان

  • Martine Ceberio
  • Vladik Kreinovich
چکیده

In many practical situations, we must compute the value of an if-then expression f(x) defined as “if c(x) ≥ 0 then f+(x) else f−(x)”, where f+(x), f−(x), and c(x) are computable functions. The value f(x) cannot be computed directly, since in general, it is not possible to check whether a given real number c(x) is non-negative or non-positive. Similarly, it is not possible to compute the value f(x) if the if-then function is discontinuous, i.e., when f+(x0) 6= f−(x0) for some x0 for which c(x0) = 0. In this paper, we show that if the if-then expression is continuous, then we can effectively compute f(x). Practical need for if-then statements. In many practical situations, we have different models for describing a phenomenon: – a model f+(x) corresponding to the case when a certain constraint c(x) ≥ 0 is satisfied, and – a model f−(x) corresponding to the case when this constraint is not satisfied, i.e., when c(x) < 0 (usually, the second model is also applicable when c(x) ≤ 0). For example, in Newton’s gravitation theory, when we are interested in the gravitation force generated by a celestial body – i.e., approximately, a sphere of a certain radius R – we end up with two different formulas: – a formula f+(x) that describes the force outside the sphere, i.e., where c(x) def = ‖r‖ −R ≥ 0, and – a different formula f−(x) that describes the force inside the sphere, i.e., where c(x) = ‖r‖ −R ≤ 0. Towards a precise formulation of the computational problem. In such situations, we have the following problem: – we know how to compute the functions f+(x), f−(x), and c(x); – we want to be able to compute the corresponding “if-then” function f(x) def = if c(x) ≥ 0 then f+(x) else f−(x). In general, we say that a function f(x) is computable if there is an algorithm that, given an input x and a rational number ε > 0, produces a rational number r for which |f(x)− r| ≤ ε. In the above formulation, we assume that the function c(x) is computable for all possible values x from a given set X, and that: – the function f+(x) is computable for all values x ∈ X for which c(x) ≥ 0; and – the function f−(x) is computable for all values x ∈ X for which c(x) ≤ 0. Why this problem is non-trivial. The value f(x) cannot be computed directly, since in general, it is not possible to check whether a given real number c(x) is non-negative or non-positive; see, e.g., [2, 3]. Discontinuous if-then statements are not computable. It is known that every computable function is everywhere continuous; see, e.g., [3]. Thus, when the if-then function f(x) is not continuous, i.e., when f+(x0) 6= f−(x0) for some x0 for which c(x0) = 0, then the function f(x) is not computable. Our main result. In this paper, we show that in all other cases, i.e., when the if-then function f(x) is continuous, it is computable. Algorithm: main idea. The main idea behind our algorithm is that in reality, we have one of the three possible cases: – case of c(x) > 0, when f(x) = f+(x); – case of c(x) < 0, when f(x) = f−(x); and – case of c(x) = 0, when f(x) = f+(x) = f−(x). Let us analyze these three cases one by one. In the first case, let us compute c(x) with higher and higher accuracy ε = 2−k, k = 1, 2, . . . As soon as we reach the accuracy 2−k < c(x) 2 , for which c(x) > 2 · 2−k, we get an approximation rk for which |c(x)− rk| ≤ 2−k, i.e., for which rk > c(x)− 2−k ≥ 2 · 2−k − 2−k = 2−k and thus, rk > 2−k. Since we know that c(x) ≥ rk − 2−k, we thus conclude that c(x) > 0. Similarly, in the second case, if we compute c(x) with higher and higher accuracy 2−k, we will reach an accuracy 2−k < |c(x)| 2 , for which the corresponding approximate value rk satisfy the inequality rk < −2−k and thus, we can conclude that c(x) < 0. In the third case, since f+(x) = f−(x), if we compute f+(x) and f−(x) with accuracy ε > 0, then the resulting approximate values r+ and r− satisfy the inequalities |f(x) − r+| = |f+(x) − r+| ≤ ε and |f(x) − r−| = |f−(x) − r−| ≤ ε and therefore, |r+ − r−| ≤ |r+ − f(x)|+ |f(x)− r−| ≤ ε + ε = 2ε. Vice versa, if the inequality |r+ − r−| ≤ 2ε is satisfied (even if we know nothing about c(x)), then in reality, the value f(x) coincides wither with f+(x) or with f−(x). In the first subcase, when f(x) = f+(x), we have |f(x)− r+| = |f+(x)− r+| ≤ ε

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On the Lebesgue Measurability of Continuous Functions in Constructive Analysis

The paper opens with a discussion of the distinction between the classical and the constructive notions of "computable function." There then follows a description of the three main varieties of modern constructive mathematics: Bishop's constructive mathematics, the recursive constructive mathematics of the Russian School, and Brouwer's intuitionistic mathematics. The main purpose of the paper i...

متن کامل

A computable Alef0-categorical structure whose theory computes true arithmetic

The goal of this paper is to construct a computable א0-categorical structure whose first order theory is computably equivalent to the true first order theory of arithmetic. Recall that a structure is computable if its atomic open diagram, that is the set of all atomic statements and their negations true in the structure, is a computable set. Computability of an infinite structure A = (A;P0 0 , ...

متن کامل

Computable Algebra, General Theory and Theory of Computable Fields(1)

Introduction. Abstract algebra is the product of a transition from such concrete systems as the ring of integers or the field of rational numbers to the corresponding, axiomatically defined, abstract systems. In the course of this abstraction process various properties of the concrete system are lost. The field of rational numbers, for example, possesses a natural topology, an ordering, and fur...

متن کامل

Certifying Polynomial Time and Linear/Polynomial Space for Imperative Programs

In earlier work of Kristiansen and Niggl the polynomial-time computable functions were characterised by stack programs of μ-measure 0, and the linear-space computable functions by loop programs of μ-measure 0. Until recently, an open problem was how to extend these characterisations to programs with user-friendly basic instructions, such as assignment statements, and with mixed data structures....

متن کامل

Kolmogorov Complexity and Games

In this survey we consider some results on Kolmogorov complexity whose proofs are based on interesting games. The close relation between Recursion theory, whose part is Kolmogorov complexity, and Game theory was revealed by Andrey Muchnik. In [10], he associated with every statement φ of Recursion theory a game Gφ that has the following properties. First, Gφ is a game with complete information ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014